package collection;

import java.util.ArrayList;
import java.util.List;

public class SubListDemo {
    public static void main(String[] ages){

        List<Integer> list=new ArrayList<>();
        for (int i=0;i<10;i++){
            list.add(i*10);
        }
        System.out.println(list);
        List<Integer> subList=list.subList(3,8);
        System.out.println(subList);

        for (int i=0;i<subList.size();i++){
            subList.set(i,subList.get(i)*10);
        }
        System.out.println(subList);//[300, 400, 500, 600, 700]
        System.out.println(list);//[0, 10, 20, 300, 400, 500, 600, 700, 80, 90]

        list.set(3,1000);
        System.out.println(list);
        System.out.println(subList);

        list.remove(0);
        //原来集合长度修改之后，子集无法再进行任何操作，操作则发现异常，但是可以重新获取子集
        System.out.println(list);
        //System.out.println(subList);异常
        List<Integer> subList2=list.subList(2,5);
        System.out.println(subList2);



        /*
        List<Integer> list=new ArrayList<>();
        for (int i=0;i<10;i++){
            list.add(i*10);
        }
        System.out.println(list);
        List<Integer> subList=list.subList(3,8);
        System.out.println(subList);

        for (int i=0;i<subList.size();i++){
            subList.set(i,subList.get(i)*10);
        }
        System.out.println(subList);//[300, 400, 500, 600, 700]
        System.out.println(list);//[0, 10, 20, 300, 400, 500, 600, 700, 80, 90]

        list.set(3,1000);
        System.out.println(list);
        System.out.println(subList);

        list.remove(0);
        //原来集合长度修改之后，子集无法再进行任何操作，操作则发现异常，但是可以重新获取子集
        System.out.println(list);
        //System.out.println(subList);异常
        List<Integer> subList2=list.subList(2,5);
        System.out.println(subList2);

         */




    }
}
